package gob.pe.mtpe.util.funciones;



import java.io.PrintWriter;
import java.io.StringWriter;

import java.util.ResourceBundle;
import java.sql.SQLException;
import java.sql.Timestamp;
import java.sql.Types;

import java.text.SimpleDateFormat;

import java.util.Date;
import java.util.ResourceBundle;
import org.apache.log4j.Logger;

/**
 * Clase que implementa Mtodos Utiles.
 */
public class Funciones {
    
    private static Logger depurador = Logger.getLogger(Funciones.class.getName()); 
    
    /**
     * Instancia de la Clase funciones.
     */
    public Funciones() {
    }
    
    /**
     * Obtiene un dato de un archivo Property.
     * @param archivo Nombre y ubicacion del Archivo Property.
     * @param dato Dato dentor del archivo Property.
     * @return (String)
     */
     public static String ObtieneProperty(String archivo, String dato) {
        String variable = "";
        try {
        	System.out.print("archivo=> : "+archivo);
        	System.out.print("dato=> : "+dato);
            ResourceBundle bundle = ResourceBundle.getBundle(archivo);
            variable = bundle.getString(dato);
            System.out.print("variable=> : "+variable);
        } catch (Exception e) {
            depurador.info("ERROR : Funciones : ObtenerDatosProperties => : "+e);
        }
        return variable;
    }
    
    /**
     * Rellena una cadena con un caracter dado.
     * @param numero 
     * @param caracterRelleno 
     * @param tamanioEsperado 
     * @return 
     */
     public static String RellenarDato(String numero, char caracterRelleno,
        int tamanioEsperado) {
        String alfanumerico = "";
        int tamanioActual = numero.trim().length();

        if (tamanioActual > tamanioEsperado) {
            return alfanumerico;
        }

        for (int i = 1; i <= (tamanioEsperado - tamanioActual); i++)
            alfanumerico += caracterRelleno;

        alfanumerico += numero.trim();
        depurador.info("rellenarDato: " + alfanumerico);

        return alfanumerico;
    }
      
     
    public static String readStackTrace(Exception e) { 
            StringWriter sw = new StringWriter(); 
            PrintWriter pw = new PrintWriter(sw); 
            e.printStackTrace(pw); 
            return sw.toString(); 
        }
    
 
}
